import axios from 'axios'

/**
 * 创建axios实例
 * baseURL:api的base_url,一般设置在 config/dev.env.js 和 config/prod.env.js
 * timeout:请求超时时间
 * @type {AxiosInstance}
 */
const service = axios.create({
  baseURL: '/vue',
  timeout: 100000
})

/**
 * request拦截器
 * 一般用于在请求头添加 token
 */
service.interceptors.request.use(config => {
  // if (store.getters.token) {
  //   config.headers.Authorization = getToken();
  // }
  return config
}, error => {
  console.log(error)
  Promise.reject(error)
})

/**
 * respone拦截器
 * 一般用于对相应进行封装，已经对错误的统一封装
 */
service.interceptors.response.use(
  response => {
    return response.data
  },
  error => {
    console.log('err' + error)// for debug
    return Promise.reject(error)
  }
)

export default service
